1. Field of the Invention
The present invention relates generally to the technical field of digital computer networking and, more particularly, to configuring network-name-services as may be required for effectively employing proxy file caches such as a network-infrastructure cache.
2. Description of the Prior Art
A significant expense in the implementation of computer networks, both local area networks ("LANs") and wide area networks ("WANs") occurs in administering the network infrastructure. As computer networks become more complex and distributed, the costs associated with administering the network infrastructure increase. A network appliance is a device which may be installed on a computer network, and which provides a network service with minimal administration, much like a home appliance. Consequently, using network appliances reduces the costs of administering the network infrastructure.
A network-infrastructure cache is a network appliance which provides a proxy cache for file data that is stored on a remote server. In principle, the network-infrastructure cache provides proxy file caching to a plurality of client workstations concurrently requesting access to file data stored on one or more servers. Thus, the network-infrastructure cache avoids accessing the remote source file server in responding to a user's request for file data. Patent Cooperation Treaty ("PCT") International Patent Application PCT/US92/04939 filed Jun. 3, 1992, entitled "System for Accessing Distributed Data Cache Channel at Each Network Node to Pass Request and Data," and U.S. Pat. No. 5,611,049 that issued Mar. 11, 1997, on a patent application claiming priority therefrom ("Distributed Data Cache patent"), disclose a system capable of performing the functions a network-infrastructure cache. More specifically, FIG. 3 in the Distributed Data Cache patent, together with the text in the Distributed Data Cache patent describing that FIG., discloses a system that is capable of performing the functions of a network-infrastructure cache. The PCT patent application and issued United States patent identified above are hereby incorporated by reference.
To access a file that is stored on a remote server, using a sequence of network packets a client workstation sends a request to the computer which stores the file ("source file server"). Data in the packets specify a particular file to be opened, and include parameters describing how the file will be accessed, e.g. reading, writing, or both. Some file access protocols lack an explicit open request. Instead, such file access protocols establish a connection to the file merely by sending requests to the source file server to read or to write the file. In such protocols, an open request is implicit in the first read or write request packet. And a close request may be assumed if the client workstation has not read or written the file for some specified interval of time. In addition to reading or writing a file, a client workstation may request from a source file server information about the attributes of a file, such as the time it was last written, or who has permission to access the file. If data requested by the client workstation is available at the source file server and if the client workstation is permitted to access requested data, the source file server responds to the request by transmitting the requested data back to the client workstation via the network.
Using conventional network techniques, enabling a client workstation to use the network-infrastructure cache rather than a more remote source file server requires redirecting the client workstation, either directly or using network services, to request file data from the network-infrastructure cache rather than directly from the source file server. In general, preparing a client workstation for using shared network resources requires performing a process on each individual client workstation during which the client workstation both discovers what shared resources are available on the network, and learns the identity of the computer at which each such shared resource is located. This process for preparing a client workstation for using shared network resources is frequently referred to as network-name resolution.
NetBIOS is a network communications standard used for network-name resolution which defines how a computer's name may be presented for translation. NetBIOS performed using the TCP/IP protocol, as defined by Request for Comment ("RFC") 1001 and RFC 1002 of the Internet Engineering Task Force, is one of the network standards used by Microsoft for Windows networks. To achieve network-name resolution in accordance with RFC 1001 and 1002, the client workstation transmits a NetBIOS resolution ("NBT") request onto the network.
Microsoft Windows networks that perform NetBIOS network-name resolution preferably include a NetBIOS Name Server ("NS"). The NetBIOS NS can perform network-name resolution using four alternative techniques, i.e. broadcast, Windows Internet Naming Service ("WINS"), Domain Naming System ("DNS") or a LMHOSTS file. (Note that the LMHOSTS file, which is a list of names and their corresponding network addresses, requires manual administration, and is therefore not used in networks of any significant size. Note also that operating systems other than Microsoft Windows provide analogous ways to perform network-name resolution.) A Microsoft Corporation publication called "The Windows NT Networking Guide," that is part of the Microsoft Windows NT Resource Kit published by Microsoft Press, explains in detail how these various naming services work. The Windows NT Networking Guide is accordingly hereby incorporated into by reference as though fully set forth here.
To obtain network addresses for network-name resolution by broadcasting, a technique that is frequently identified by the name B-Node, a client workstation broadcasts an NBT request containing the computer name. The named computer, or a name service proxy, responds to the NBT request with its network address. In this way responsibility for translating computer names to network addresses is distributed among all computers included in the network. The B-Node technique works well for small networks, but generates an excessive amount of network traffic for use in large networks.
For an alternative network-name resolution technique that permits point-to-point network-name resolution, a technique that is frequently identified by the name P-Node, all computers on the network record a network address of a NetBIOS name server computer. A client workstation then sends an NBT request containing the computer name to the NetBios name server computer. If the NetBIOS name server computer recognizes the requested computer name, it responds to the NBT request by transmitting the network address of the named computer back to the requesting client workstation. If the requesting client workstation does not receive a reply from the NetBIOS name server, it may then attempt to obtain the network address of the named computer using a fallback technique such as B-Node. Alternatively, the client workstation may return an error to the client process that has asked for resolution of the named computer's network address. Microsoft Windows networks implementation of network-name resolution, i.e. NetBIOS NS, receives NBT requests at a well known User Datagram Protocol ("UDP") port 137.
As is readily apparent from the preceding description of network-name resolution, employing, in a conventional manner, the network-infrastructure cache for efficiently and effectively responding to requests for file access from client workstations involves a significant amount of network administrative effort. First, configuring the network-infrastructure cache to provide proxy file caching requires creating a different alias name for each remote file server for which the network-infrastructure cache provides proxy file caching. Each such alias name must be stored within the network-infrastructure cache so it can appear to each of the client workstations on the network as a file server having the alias name. In addition to creating an alias name, the network-infrastructure cache must be configured to cache specific files stored on the remote file server. Moreover, applying conventional network administration techniques to the network-infrastructure cache requires additional significant ongoing administrative effort to ensure that proxy file caching provided by the network-infrastructure cache effectively reduces network traffic, and provides improved network response to requests for file access issued by client workstations.